/**
 * jims
 */
package com.jims.master.modules.base.user.dao;


import com.jims.master.common.persistence.CrudDao;
import com.jims.master.common.persistence.annotation.MyBatisDao;


import com.jims.master.modules.base.user.entity.MasterBaseinfo;
import com.jims.master.modules.base.user.entity.MasterDoctorinfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 医生信息DAO接口
 * @author qlx
 * @version 2017-04-27
 */
@MyBatisDao
public interface MasterDoctorinfoDao extends CrudDao<MasterDoctorinfo> {

    /**
     * 申请医生列表
     * @return
     */
    public List<MasterDoctorinfo> findApplyList(MasterDoctorinfo masterDoctorinfo);

    /**
     * 根據baseinfoId查詢醫生信息
     * @param persionId
     * @return
     */
    public MasterDoctorinfo getDoctorinfoByBaseinfoId(@Param("persionId") String persionId);

    /**
     * 医生总数
     * @author 陈涛
     * @return
     */
    public int doctorCount(MasterDoctorinfo masterDoctorinfo);

    /**
     * 查询医生信息
     * @param baseInfo
     * @return
     */
    public MasterDoctorinfo getDocByBaseinfo(@Param("baseInfo") MasterBaseinfo baseInfo);

    /**
     * 首页排序医生查询
     * @param masterDoctorinfo
     * @author chentao
     * @return
     */
    public List<MasterDoctorinfo> findListIndex(MasterDoctorinfo masterDoctorinfo);

    public List<MasterDoctorinfo> findListByParts(MasterDoctorinfo masterDoctorinfo);

    public List<MasterDoctorinfo> getPartsByMechanism(@Param("mechanism") String mechanism);
    public List<MasterDoctorinfo> getDocByArea(@Param("hospital")String hospital,@Param("parts")String parts,@Param("area")String area);
    public List<MasterDoctorinfo> getDocBys(@Param("hospital")String hospital,@Param("parts")String parts,@Param("area")String area);

    public List<MasterDoctorinfo> getAllDoc();

    public List <String> getMechanism();

    /**
     * 审核医生
     * @return
     */
    public int checkDoctorById(MasterDoctorinfo masterDoctorinfo);

}